4
תגובות

prevenDefault

פתח אנונימי ,
יש לדוגמה קוד כזה:
<a href="x">hellow <span>wor</span>ld</a>

כשולחצים על הקישור, מופעלת אצלי פונקציה שמציגה אלמנט מסוים, ומחזירה false כדי לבטל מעבר עמוד של הקישור.

מה שאני רוצה להוסיף, זה שאם לחצו על ה-span שבקישור, אז שהפונקציה שמציגה אלמנט לא תופעל.
עשיתי את זה עם preventDefault על הקישור ב-jquery.
זה עובד מצוין, אבל הבעיה היא שיש מעבר עמוד, כי בגלל שהפונקציה לא הופעלה אז אין return false ולכן עוברים עמוד.
איך אני מונע גם את מעבר העמוד?
ניסיתי להחזיר false באירוע click ak v-דפשמ ולא הצליח.


תודה מראש.

4 תשובות

avatar ענה iiddaannyy ב 22 לנובמבר 2011 #

זה אני שואל השאלה דרך אגב, שכחתי להתחבר. :)

avatar ענה iiddaannyy ב 22 לנובמבר 2011 #

שורה אחרונה (לפני תודה מראש):
"ניסיתי להחזיר false באירוע click של ה-span ולא הצליח."

avatar ענה intval ב 22 לנובמבר 2011 #

אתה יכול בקליק של הקישור לבדוק מה האלמט שלחצו עליו. הקישור או הספאן.
event.srcElement או event.targetElement
אולי אפילו ה this של jquery יהיה האחד המתאים

avatar ענה iiddaannyy ב 23 לנובמבר 2011 #

תודה רבה.
בדקתי האם event.target שווה ל-this, וככה ידעתי האם האלמנט שנלחץ הוא באמת האלמנט שעליו הפעלתי את אירוע הלחיצה.